package net.akkz.dao;

import java.util.ArrayList;

import net.akkz.dbFactory.Session;
import net.akkz.exception.BuildClassError;
import net.akkz.exception.SQLExcuteException;
import net.akkz.model.Question;

public interface QuestionDao
{
	public void addQuestion(Session session, Question question) throws SQLExcuteException;
	
	public ArrayList<Question> findQuestion(Session session, int start, int end) throws SQLExcuteException, BuildClassError;
	
	public ArrayList<Question> findQuestionOrderByGoodNum(Session session, int start, int end) throws SQLExcuteException, BuildClassError;
	
	public ArrayList<Question> findQuestionWithKind(Session session, int start, int end, int kind) throws SQLExcuteException, BuildClassError;
	
	public ArrayList<Question> findQuestionOrderByGoodNumWithKind(Session session, int start, int end, int kind) throws SQLExcuteException, BuildClassError;
	
	public ArrayList<Question> findQuestionByStudentId(Session session, int studentId) throws SQLExcuteException, BuildClassError;
	
	public Question getQuestion(Session session, int id) throws SQLExcuteException, BuildClassError;
	
	public void deleteQuestion(Session session, int id) throws SQLExcuteException;
}
